function animate(obj, target ,callback){ //封装
    // 当我们不断点击按钮 这个元素的速度会越来越快，因为开启太多的定时器
    // 解决方案就是 让我们的元素只有一个定时器执行
    clearInterval(obj.timer); // 先清除原来的定时器，只保留一个定时器
    obj.timer = setInterval(function(){
        // 获取步长值 , 并写进定时器中
        //  把步长值变为整数 ，可以上上取整；
        // var step = Math.ceil((target - obj.offsetLeft) / 10); // 向上取整
        var step = (target - obj.offsetLeft) / 10;
        step = step > 0 ? Math.ceil(step) : Math.floor(step);
        if(obj.offsetLeft == target){ //获取当前位置
            // 停止计时器  即 停止动画
            clearInterval(obj.timer);
            // 回调函数写到定时器里面
            if(callback) {
                callback(); // 调用函数
            }
            // obj.innerHTML = '位置：' + target + '   停止了！';
            obj.innerHTML = '位置：' + obj.offsetLeft + '   停止了！';
        } else {
            // 此元素与需要添加定位 才能使用 element.style.left
            // 把每次加 5 改为一个慢慢减小的值  补偿公式： （目标值 - 现在的位置） / 10
            obj.style.left = obj.offsetLeft + step + 'px';  //设置移动距离
        }
    },100)
}